home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 10 / AACD 10.iso / AACD / Programming / mpatrol / ChangeLog next >
Text File  |  2000-05-16  |  42KB  |  1,327 lines

  1. Tue May 16 01:21:30 2000  Graeme Roy  <graeme@epc.co.uk>
  2.  
  3.     * doc/mpatrol.texi: Documented the ALLOWOFLOW option.
  4.  
  5.     * doc/refcard.tex: Added the ALLOWOFLOW and -M options.
  6.  
  7.     * man/man1/mpatrol.1, man/cat1/mpatrol.1: Added the -M option.
  8.  
  9.     * man/man3/mpatrol.3, man/cat3/mpatrol.3: Added the ALLOWOFLOW option.
  10.  
  11.     * src/memory.h, src/memory.c:
  12.     Added determination of the system stack direction.
  13.  
  14.     * src/info.c, src/info.h: Added support for the ALLOWOFLOW option.
  15.  
  16.     * src/option.c, src/option.h, src/mpatrol.h:
  17.     Added the ALLOWOFLOW option.
  18.  
  19.     * src/mpatrol.c: Added the -M option.
  20.  
  21. Mon May 15 23:37:48 2000  Graeme Roy  <graeme@epc.co.uk>
  22.  
  23.     * FAQ: Added information about frame pointers.
  24.  
  25.     * doc/README: Added the PDF version of the reference card.
  26.  
  27.     * doc/Makefile: Added ability to build PDF reference card.
  28.  
  29.     * doc/mpatrol.texi:
  30.     Added background information on memory allocation profiling.  Documented
  31.     the mprof command.
  32.  
  33.     * doc/refcard.tex: Added PDF support and a second page.
  34.  
  35.     * pkg/tar/build, pkg/rpm/mpatrol.spec, pkg/pkg/build, pkg/pkg/prototype,
  36.       pkg/lha/build:
  37.     Added the PDF quick reference card.
  38.  
  39.     * src/profile.c:
  40.     Added information about the endianness of the host machine in the
  41.     profiling output file.
  42.  
  43.     * src/mprof.c: Added support for reading byte-swapped data.
  44.  
  45.     * src/library.c:
  46.     Added the sbrk module for AmigaOS with GCC and Windows platforms.
  47.  
  48. Sun May 14 23:48:46 2000  Graeme Roy  <graeme@epc.co.uk>
  49.  
  50.     * build/windows/mpatrol.def: Added memccpy().
  51.  
  52.     * doc/mpatrol.texi:
  53.     Added memccpy().  Mentioned the %p component when specifying the log
  54.     file or profiling output file names.
  55.  
  56.     * man/man3/mpatrol.3, man/cat3/mpatrol.3: Added the memccpy() function.
  57.  
  58.     * src/inter.c, src/inter.h, src/malloc.c, src/mpatrol.h:
  59.     Added an extra argument to __mp_copymem().
  60.  
  61.     * src/info.h, src/diag.c, src/malloc.c, src/mpatrol.h:
  62.     Added the memccpy() function.
  63.  
  64.     * src/diag.c, src/diag.h: Added an extra argument to __mp_logmemcopy().
  65.  
  66.     * src/info.c, src/info.h, src/inter.c:
  67.     Added an extra argument and return value to __mp_copymemory().
  68.  
  69.     * src/stack.c:
  70.     Added signal handlers for UNIX when traversing the call stack.
  71.  
  72.     * src/memory.c:
  73.     Now only fall back on /proc to get the program filename if other methods
  74.     don't work.
  75.  
  76.     * src/diag.c: Added the %p log file variable.
  77.  
  78.     * src/diag.c, src/diag.h, src/info.c, src/profile.c, src/option.c:
  79.     Added a meminfo header to __mp_logfile() and __mp_proffile().
  80.  
  81. Sat May 13 09:56:06 2000  Graeme Roy  <graeme@epc.co.uk>
  82.  
  83.     * FAQ: Mentioned the reference card.
  84.  
  85. Fri May 12 19:01:12 2000  Graeme Roy  <graeme@epc.co.uk>
  86.  
  87.     * README: Added information on the reference card.
  88.  
  89.     * doc/README: Added details about the reference card.
  90.  
  91.     * doc/Makefile: Added ability to build the quick reference card.
  92.  
  93.     * doc/mpatrol.texi: Added information about the quick reference card.
  94.  
  95.     * doc/refcard.tex: New quick reference card.
  96.  
  97.     * man/man3/mpatrol.3, man/man1/mprof.1, man/man1/mleak.1,
  98.       man/man1/mpatrol.1, man/cat3/mpatrol.3, man/cat1/mprof.1,
  99.       man/cat1/mleak.1, man/cat1/mpatrol.1:
  100.     Added a reference to the quick reference card.
  101.  
  102.     * pkg/tar/build, pkg/rpm/mpatrol.spec, pkg/pkg/prototype, pkg/pkg/build,
  103.       pkg/lha/build:
  104.     Added the quick reference card.
  105.  
  106. Thu May 11 21:08:36 2000  Graeme Roy  <graeme@epc.co.uk>
  107.  
  108.     * FAQ:
  109.     Mentioned -fno-inline-functions and how to suppress diagnostic messages.
  110.  
  111.     * doc/README, doc/Makefile:
  112.     Added the ASCII art image file.  The HTML version of the manual when
  113.     split into separate nodes also relies on the JPEG image.
  114.  
  115.     * doc/mpatrol.texi: Documented the NDEBUG macro.
  116.  
  117.     * man/man3/mpatrol.3, man/man1/mprof.1, man/man1/mleak.1,
  118.       man/man1/mpatrol.1, man/cat3/mpatrol.3, man/cat1/mprof.1,
  119.       man/cat1/mleak.1, man/cat1/mpatrol.1:
  120.     Added the mpatrol homepage as a reference.
  121.  
  122.     * pkg/tar/build, pkg/rpm/mpatrol.spec, pkg/pkg/build, pkg/pkg/prototype,
  123.       pkg/lha/build:
  124.     Added doc/images/mpatrol.txt to the distribution.
  125.  
  126.     * src/info.c:
  127.     Added an extra parameter to the calls to __mp_profilealloc() and
  128.     __mp_profilefree() to indicate whether the symbol table should be
  129.     unprotected or not.
  130.  
  131.     * src/profile.c, src/profile.h, src/inter.c:
  132.     Fixed problem with write-protected symbols when writing an intermediate
  133.     profiling information file.
  134.  
  135.     * src/inter.c:
  136.     The comparison in memcmp() should be between unsigned chars and not plain
  137.     chars.
  138.  
  139. Wed May 10 23:59:26 2000  Graeme Roy  <graeme@epc.co.uk>
  140.  
  141.     * doc/mpatrol.texi, man/man3/mpatrol.3, man/cat3/mpatrol.3,
  142.       src/mpatrol.h, src/malloc.c:
  143.     Added an extra argument to recalloc().
  144.  
  145.     * doc/mpatrol.texi:
  146.     Mentioned that mpatrol can now be used with the IRIX _RLD_LIST
  147.     environment variable.  Added ASCII logo for info files.
  148.  
  149.     * doc/images/mpatrol.txt:
  150.     New image file containing the word mpatrol in ASCII art.
  151.  
  152.     * FAQ, man/man1/mpatrol.1, man/cat1/mpatrol.1, src/mpatrol.c:
  153.     Removed references to LD_PRELOAD.
  154.  
  155.     * man/man1/mprof.1, man/cat1/mprof.1, man/man3/mpatrol.3,
  156.       man/cat3/mpatrol.3:
  157.     Added extra references.
  158.  
  159.     * src/config.h:
  160.     IRIX systems have support for preloading shared libraries, but the name
  161.     of the environment variable is _RLD_LIST and not LD_PRELOAD.
  162.  
  163.     * src/diag.c: Added explicit return type to logcall().
  164.  
  165.     * src/info.c:
  166.     The comparison in memcmp() should be between unsigned chars and not
  167.     plain chars.
  168.  
  169.     * src/mpatrol.h: Disable all mpatrol features if NDEBUG is defined.
  170.  
  171.     * tests/fail/test11.c, tests/fail/test12.c:
  172.     The option is PAGEALLOC and not PAGESIZE.
  173.  
  174. Mon May  8 21:53:30 2000  Graeme Roy  <graeme@epc.co.uk>
  175.  
  176.     * build/amiga/Makefile, build/amiga/Makefile, build/netware/Makefile,
  177.       build/unix/Makefile, build/windows/Makefile, build/windows/NMakefile:
  178.     Added mutex.h to threadsafe diagnostics module.
  179.  
  180.     * src/diag.c, src/diag.h:
  181.     Added the __mp_logalloc(), __mp_logrealloc() and __mp_logfree()
  182.     functions.  Added the logcall() function.  Added __mp_logmemset(),
  183.     __mp_logmemcopy(), __mp_logmemlocate() and __mp_logmemcompare().
  184.  
  185.     * src/info.c:
  186.     Added calls to __mp_logalloc(), __mp_logrealloc() and __mp_logfree().
  187.     Display the call details when CHECK* options are used, even if the LOG*
  188.     options are not used.  Added more display of call details when errors
  189.     occur and fixed a bug when profiling memory allocations of size 0.
  190.  
  191.     * src/diag.c, src/diag.h, src/info.c, src/inter.c:
  192.     Changed __mp_alloctypenames[] to __mp_functionnames[].
  193.  
  194. Thu May  4 20:21:49 2000  Graeme Roy  <graeme@epc.co.uk>
  195.  
  196.     * build/unix/Makefile: Added lint support.
  197.  
  198.     * doc/mpatrol.texi:
  199.     Changed the arguments to cfree() and documented the lint make target.
  200.  
  201.     * man/man3/mpatrol.3, man/cat3/mpatrol.3:
  202.     Added new parameters to cfree().
  203.  
  204.     * pkg/pkg/prototype, pkg/pkg/build: Added the lint library.
  205.  
  206.     * src/diag.c: Made the error and warning counts static.
  207.  
  208.     * src/malloc.c, src/config.h:
  209.     Added MP_ALTFUNCNAMES and MP_ALTFUNCNAME().
  210.  
  211.     * src/malloc.c, src/mpatrol.h:
  212.     cfree() takes two additional arguments, similar to calloc().
  213.  
  214. Wed May  3 00:20:14 2000  Graeme Roy  <graeme@epc.co.uk>
  215.  
  216.     * doc/mpatrol.texi: Added more information on profiling.
  217.  
  218. Tue May  2 23:05:30 2000  Graeme Roy  <graeme@epc.co.uk>
  219.  
  220.     * doc/mpatrol.texi:
  221.     Added information on the format of the profiling output file.
  222.  
  223.     * src/mprof.c:
  224.     Need to always read the symbol name string table, even if it is size 1.
  225.  
  226. Mon May  1 21:57:17 2000  Graeme Roy  <graeme@epc.co.uk>
  227.  
  228.     * doc/mpatrol.texi: Added the profiling chapter.
  229.  
  230.     * man/man1/mpatrol.1, man/cat1/mpatrol.1:
  231.     Documented that the default profiling output filename is mpatrol.%n.out.
  232.  
  233.     * man/man3/mpatrol.3, man/cat3/mpatrol.3: LARGEBOUND defaults to 2048.
  234.  
  235.     * src/diag.c, src/diag.h: Added __mp_proffile().
  236.  
  237.     * src/profile.c, src/option.c, src/mpatrol.c, src/config.h:
  238.     Allow the profiling output filename to contain special formatting
  239.     characters.
  240.  
  241.     * tests/profile/test1.c: New profiling test.
  242.  
  243.     * tests/profile/test2.c:
  244.     Added new profiling test with a fix for the previous test.
  245.  
  246. Sun Apr 30 23:59:16 2000  Graeme Roy  <graeme@epc.co.uk>
  247.  
  248.     * man/man1/mpatrol.1, man/cat1/mpatrol.1: Added the profiling options.
  249.  
  250.     * man/man1/mprof.1, man/cat1/mprof.1: New manual page for mprof.
  251.  
  252.     * man/man3/mpatrol.3, man/cat3/mpatrol.3:
  253.     Added information and options about profiling.
  254.  
  255.     * pkg/tar/build, pkg/rpm/mpatrol.spec, pkg/pkg/build, pkg/pkg/prototype,
  256.       pkg/lha/build:
  257.     Added the mprof manual page.
  258.  
  259.     * src/getopt.c, src/getopt.h: Added __mp_getnum().
  260.  
  261.     * src/mprof.c: Added the memory leak table.
  262.  
  263. Thu Apr 27 19:07:37 2000  Graeme Roy  <graeme@epc.co.uk>
  264.  
  265.     * doc/mpatrol.texi: Documented IRIX support.  Changed memleak to mleak.
  266.  
  267.     * build/amiga/Makefile, build/amiga/Makefile, build/netware/Makefile,
  268.       build/unix/Makefile, build/windows/Makefile, build/windows/NMakefile:
  269.     Renamed memleak to mleak.
  270.  
  271.     * man/cat1/mpatrol.1, man/cat3/mpatrol.3, man/man1/mpatrol.1,
  272.       man/man3/mpatrol.3, man/cat1/mleak.1, man/cat1/Attic/memleak.1,
  273.       man/man1/mleak.1, man/man1/Attic/memleak.1:
  274.     Changed memleak to mleak.
  275.  
  276.     * src/mleak.c, src/Attic/memleak.c:
  277.     Changed memleak to mleak.
  278.  
  279.     * src/config.h, src/target.h, src/memory.c: Added IRIX support.
  280.  
  281.     * src/mprof.c: Added support for symbol offsets.
  282.  
  283. Wed Apr 26 23:24:00 2000  Graeme Roy  <graeme@epc.co.uk>
  284.  
  285.     * src/symbol.c, src/symbol.h: Added an index into the profiling table.
  286.  
  287.     * src/profile.c:
  288.     Added the symbol address table to write to the profiling output file.
  289.  
  290.     * src/mprof.c:
  291.     Added the cleardata() function and temporary data for sorting.
  292.  
  293. Tue Apr 25 23:40:11 2000  Graeme Roy  <graeme@epc.co.uk>
  294.  
  295.     * build/amiga/Makefile, build/amiga/Makefile, build/netware/Makefile,
  296.       build/unix/Makefile, build/windows/Makefile, build/windows/NMakefile:
  297.     Added the tree module to mprof.
  298.  
  299.     * doc/mpatrol.texi, src/config.h, src/target.h: Added AIX support.
  300.  
  301.     * src/mprof.c: Added the direct allocation table.
  302.  
  303. Mon Apr 24 19:24:38 2000  Graeme Roy  <graeme@epc.co.uk>
  304.  
  305.     * pkg/tar/build, pkg/rpm/mpatrol.spec, pkg/pkg/build, pkg/pkg/prototype,
  306.       pkg/lha/build, build/windows/NMakefile, build/windows/Makefile,
  307.       build/unix/Makefile, build/netware/Makefile, build/amiga/Makefile,
  308.       build/amiga/SMakefile:
  309.     Added the mprof tool.
  310.  
  311.     * src/info.c:
  312.     Added symbol table parameter to the call to __mp_newprofile().
  313.  
  314.     * src/info.h: The profile header file now also includes symbol.h.
  315.  
  316.     * src/symbol.c: Set the profiling data offset for each symbol.
  317.  
  318.     * src/symbol.h: Added a profiling table offset for each symbol.
  319.  
  320.     * src/profile.c:
  321.     Changed the format of the profiling output file slightly.  The profdata
  322.     structures are now only allocated for leaf call sites.  Added support
  323.     for symbols.
  324.  
  325.     * src/inter.c:
  326.     Need to make the symbol table writable before we can dump any profiling
  327.     information.
  328.  
  329.     * src/mprof.c:
  330.     New tool for displaying profiling information from a profiling output
  331.     file produced by the mpatrol library.
  332.  
  333. Sun Apr 23 23:23:56 2000  Graeme Roy  <graeme@epc.co.uk>
  334.  
  335.     * src/memory.c, src/slots.c, src/option.c:
  336.     Added some explicit casting for compiling with C++.
  337.  
  338.     * src/profile.c, src/profile.h, src/diag.c:
  339.     Changed the list field to ilist.  Added support for full call graphs.
  340.     The profdata structures are now only allocated for leaf call sites.
  341.  
  342. Thu Apr 20 23:45:46 2000  Graeme Roy  <graeme@epc.co.uk>
  343.  
  344.     * build/amiga/Makefile, build/amiga/Makefile, build/netware/Makefile,
  345.       build/unix/Makefile, build/windows/Makefile, build/windows/NMakefile:
  346.     Added more dependencies for the profile module.
  347.  
  348.     * src/config.h:
  349.     Mentioned that the profiling allocation bounds can now be overridden at
  350.     run-time.  Added MP_PROFMAGIC.
  351.  
  352.     * src/info.c:
  353.     Always profile a reallocation when profiling is enabled, even if the new
  354.     size is the same as the old size.  Added protection of internal profiler
  355.     memory.
  356.  
  357.     * src/diag.c:
  358.     Added display of boundaries and autosave count in the summary.
  359.  
  360.     * src/option.c, src/option.h, src/mpatrol.h:
  361.     Added the AUTOSAVE, SMALLBOUND, MEDIUMBOUND and LARGEBOUND options.
  362.  
  363.     * src/profile.h, src/profile.c, src/inter.c:
  364.     Implemented the autosave feature.  Added the allocation boundaries to
  365.     the profiling output file.  Added a magic sequence of characters to the
  366.     beginning and end of the profiling output file.
  367.  
  368.     * src/mpatrol.c: Added the -1, -2, -3 and -Q options.
  369.  
  370. Wed Apr 19 23:24:41 2000  Graeme Roy  <graeme@epc.co.uk>
  371.  
  372.     * build/amiga/Makefile, build/amiga/Makefile, build/netware/Makefile,
  373.       build/unix/Makefile, build/windows/Makefile, build/windows/NMakefile:
  374.     Added profile.h for info.h.
  375.  
  376.     * doc/mpatrol.texi, man/cat1/mpatrol.1, man/man1/mpatrol.1:
  377.     Converted the -P and -p options to -X and -x.
  378.  
  379.     * src/config.h:
  380.     Added MP_BINSIZE, MP_SMALLBOUND, MP_MEDIUMBOUND and MP_LARGEBOUND.
  381.  
  382.     * src/info.c, src/info.h, src/diag.c:
  383.     Added profiling support.
  384.  
  385.     * src/option.c, src/option.h, src/mpatrol.h:
  386.     Added the PROF and PROFFILE options.
  387.  
  388.     * src/profile.c, src/profile.h: Added __mp_writeprofile().
  389.  
  390.     * src/inter.c: Added call to __mp_writeprofile().
  391.  
  392.     * src/mpatrol.c:
  393.     Changed the -P and -p options to -X and -x respectively.  Added the -P
  394.     and -p options for profiling.
  395.  
  396.     * src/library.c: Added the profile module.
  397.  
  398. Tue Apr 18 23:55:26 2000  Graeme Roy  <graeme@epc.co.uk>
  399.  
  400.     * build/amiga/Makefile, build/amiga/Makefile, build/netware/Makefile,
  401.       build/unix/Makefile, build/windows/Makefile, build/windows/NMakefile:
  402.     Added the profile module.
  403.  
  404.     * doc/mpatrol.texi: Added more related software.
  405.  
  406.     * src/config.h: Added the MP_PROFFILE definition.
  407.  
  408.     * src/profile.c, src/profile.h: New files for memory profiling.
  409.  
  410. Thu Apr 13 19:15:11 2000  Graeme Roy  <graeme@epc.co.uk>
  411.  
  412.     * doc/mpatrol.texi:
  413.     Added more related software and described how to embed object file
  414.     format access libraries into the shared version of the mpatrol library.
  415.     Documented the .gdbinit file provided, and also added more things to do.
  416.  
  417.     * extra/.gdbinit: New file for using GDB with mpatrol.
  418.  
  419.     * pkg/lha/build, pkg/tar/build: Added the GDB command file.
  420.  
  421.     * src/malloc.c, src/mpatrol.h:
  422.     Made set_new_handler() have extern "C" linkage for G++.
  423.  
  424. Tue Apr 11 21:48:34 2000  Graeme Roy  <graeme@epc.co.uk>
  425.  
  426.     * build/windows/Makefile, build/windows/NMakefile: Removed -noentry.
  427.  
  428.     * doc/mpatrol.texi: Added documentation on the GNU C library.
  429.  
  430. Thu Apr  6 19:26:29 2000  Graeme Roy  <graeme@epc.co.uk>
  431.  
  432.     * FAQ: Documented change to name of some object libraries.
  433.  
  434.     * build/windows/Makefile, build/unix/Makefile, build/netware/Makefile,
  435.       build/amiga/Makefile, build/amiga/SMakefile:
  436.     Added version module to mpatrol and memleak.
  437.  
  438.     * build/windows/Makefile, build/netware/Makefile, build/amiga/SMakefile:
  439.     Changed the names of the object libraries to be prefixed by lib.
  440.  
  441.     * build/amiga/Makefile:
  442.     Added dependencies for the sbrk module.  Also now use rm to remove
  443.     files.
  444.  
  445.     * build/windows/Makefile, build/windows/NMakefile:
  446.     Added dependencies for sbrk.h.
  447.  
  448.     * build/netware/Makefile, build/windows/Makefile, build/amiga/Makefile,
  449.       build/amiga/SMakefile, pkg/lha/build:
  450.     Added the mpatrol tool.
  451.  
  452.     * build/windows/Makefile: Added -noentry when building DLLs.
  453.  
  454.     * build/windows/NMakefile: New Microsoft Makefile.
  455.  
  456.     * doc/mpatrol.texi:
  457.     Documented that all platforms now have the mpatrol command.
  458.  
  459.     * src/inter.c: Force initialisation of simulated UNIX heap.
  460.  
  461.     * src/mpatrol.c, src/memleak.c: Added copyright information.
  462.  
  463.     * src/mpatrol.c:
  464.     No longer look at the current setting of the MPATROL_OPTIONS environment
  465.     variable.  Also fixed return value of system() when gcc is used on
  466.     AmigaOS.
  467.  
  468. Wed Apr  5 23:57:19 2000  Graeme Roy  <graeme@epc.co.uk>
  469.  
  470.     * FAQ, bin/Attic/mpatrol, pkg/tar/build, pkg/rpm/mpatrol.spec,
  471.       pkg/pkg/build:
  472.     The mpatrol shell script is now a binary command.
  473.  
  474.     * build/windows/Makefile, build/unix/Makefile, build/netware/Makefile,
  475.       build/amiga/Makefile, build/amiga/SMakefile:
  476.     Added support for the getopt module.
  477.  
  478.     * build/unix/Makefile: Added the mpatrol tool.
  479.  
  480.     * doc/mpatrol.texi:
  481.     Documented that the mpatrol shell script is now a binary command.
  482.  
  483.     * man/cat1/mpatrol.1, man/man1/mpatrol.1, doc/mpatrol.texi:
  484.     Existing MPATROL_OPTIONS settings are now no longer used with the
  485.     mpatrol command.
  486.  
  487.     * man/cat1/mpatrol.1, man/man1/mpatrol.1, man/cat1/memleak.1,
  488.       man/man1/memleak.1:
  489.     Added the -V option.
  490.  
  491.     * pkg/lha/build:
  492.     Don't include the mpatrol shell script in the distribution.
  493.  
  494.     * src/config.h:
  495.     Added MP_PRELOAD_SUPPORT, MP_PRELOAD_NAME and MP_PRELOAD_LIBS.
  496.  
  497.     * src/getopt.h, src/getopt.c:
  498.     New files for parsing command line options.
  499.  
  500.     * src/mpatrol.c: Converted UNIX shell script to be written in C.
  501.  
  502.     * src/memleak.c: Added the -V option.
  503.  
  504. Tue Apr  4 17:50:20 2000  Graeme Roy  <graeme@epc.co.uk>
  505.  
  506.     * build/windows/mpatrol.def: Added __mp_printinfo.
  507.  
  508.     * doc/mpatrol.texi: Added __mp_printinfo and lots more related software.
  509.  
  510.     * man/cat3/mpatrol.3, man/man3/mpatrol.3: Documented __mp_printinfo().
  511.  
  512.     * src/inter.h, src/inter.c, src/mpatrol.h:
  513.     Added the __mp_printinfo() function.
  514.  
  515. Mon Apr  3 23:48:56 2000  Graeme Roy  <graeme@epc.co.uk>
  516.  
  517.     * build/amiga/Makefile, build/amiga/SMakefile, build/netware/Makefile,
  518.       build/windows/Makefile, build/unix/Makefile:
  519.     Changed mpatrol.c to library.c.
  520.  
  521.     * doc/Makefile: Also remove compressed tar archive for clean target.
  522.  
  523.     * doc/mpatrol.texi: Documented Inuse support.
  524.  
  525.     * src/info.c: Added Inuse support.
  526.  
  527.     * src/diag.c:
  528.     Added date and time of log file generation.  Also added information
  529.     about the mpatrol homepage.
  530.  
  531.     * src/inter.c: Added Inuse support.
  532.  
  533.     * src/mpatrol.c, src/library.c: Renamed mpatrol.c to library.c.
  534.  
  535.     * src/version.h, src/version.c: Added a definition for __mp_homepage.
  536.  
  537. Sun Apr  2 15:38:57 2000  Graeme Roy  <graeme@epc.co.uk>
  538.  
  539.     * doc/mpatrol.texi:
  540.     Documented the memleak command and that DG/UX now supports the
  541.     LD_PRELOAD feature, and updated some of the tests for C++.
  542.  
  543.     * src/config.h: Provided support for Parasoft Inuse.
  544.  
  545.     * src/heap.c: Added Inuse support.
  546.  
  547.     * src/malloc.c: Changed set_new_handler name mangling for g++.
  548.  
  549.     * tests/tutorial/test1.c, tests/tutorial/test2.c,
  550.       tests/tutorial/test3.c, tests/pass/test2.c:
  551.     Updated some of the tests for C++.
  552.  
  553.     * tests/fail/test13.c, tests/fail/test14.c:
  554.     New tests for freeing local and global variables.
  555.  
  556.     * tests/fail/test15.c:
  557.     New test to highlight problems of overwriting pointer information.
  558.  
  559. Fri Mar 31 08:50:20 2000  Graeme Roy  <graeme@epc.co.uk>
  560.  
  561.     * build/amiga/Makefile, build/amiga/SMakefile, build/netware/Makefile,
  562.       build/windows/Makefile:
  563.     Added the memleak tool.
  564.  
  565.     * build/unix/Makefile:
  566.     Added the memleak tool and fixed embedded shared library versions.
  567.  
  568. Thu Mar 30 18:10:11 2000  Graeme Roy  <graeme@epc.co.uk>
  569.  
  570.     * man/cat1/memleak.1, man/man1/memleak.1:
  571.     New manual page for the memleak tool.
  572.  
  573.     * man/cat1/mpatrol.1, man/cat3/mpatrol.3, man/man1/mpatrol.1,
  574.       man/man3/mpatrol.3:
  575.     Added a reference to the memleak manual page.
  576.  
  577.     * pkg/rpm/mpatrol.spec, pkg/pkg/build, pkg/pkg/prototype, pkg/tar/build,
  578.       pkg/lha/build:
  579.     Added the memleak tool and manual pages.
  580.  
  581.     * src/config.h: Added a definition for MP_BUFFER_SIZE.
  582.  
  583.     * src/memleak.c: New file for detecting memory leaks in the log file.
  584.  
  585. Sun Mar 26 20:26:46 2000  Graeme Roy  <graeme@epc.co.uk>
  586.  
  587.     * bin/mupdate:
  588.     Used colons instead of tabs as field separators for rcs2log.
  589.  
  590. Fri Mar 24 01:37:57 2000  Graeme Roy  <graeme@epc.co.uk>
  591.  
  592.     * FAQ: Added lots more questions and answers.
  593.  
  594.     * build/amiga/Makefile, build/windows/Makefile:
  595.     Added utils.h dependency to sbrk.o.
  596.  
  597.     * src/sbrk.c: Added alignment restrictions to brk() and sbrk().
  598.  
  599.     * tests/fail/test11.c: New test for post-read errors.
  600.  
  601.     * tests/fail/test12.c: New test for pre-read errors.
  602.  
  603. Thu Mar 23 21:30:15 2000  Graeme Roy  <graeme@epc.co.uk>
  604.  
  605.     * README: Mentioned that Windows now overrides malloc() as well.
  606.  
  607.     * build/amiga/Makefile, build/windows/Makefile: Added the sbrk module.
  608.  
  609.     * build/windows/Makefile: Added malloc module.
  610.  
  611.     * build/windows/mpatrol.def:
  612.     Added overriding functions to the DLL specification.
  613.  
  614.     * doc/mpatrol.texi: Brought documentation up to date with product.
  615.  
  616.     * man/man3/mpatrol.3, man/cat3/mpatrol.3:
  617.     Mentioned that on Windows platforms, malloc() is overridden as well.
  618.  
  619.     * pkg/lha/mpatrol.readme: New file for Aminet distributions.
  620.  
  621.     * src/config.h: Added a definition for MP_BREAK_SIZE.
  622.  
  623.     * src/memory.c:
  624.     Always round up the allocation size to 64K on Windows as this is what
  625.     the VirtualAlloc() function does.
  626.  
  627.     * src/sbrk.c, src/sbrk.h: New files for brk() and sbrk().
  628.  
  629.     * src/inter.c:
  630.     Added support for Microsoft's C run-time library calling malloc() before
  631.     it is fully set up.
  632.  
  633.     * src/mpatrol.c: Include malloc.c if on Windows platforms as well.
  634.  
  635. Wed Mar 22 19:17:47 2000  Graeme Roy  <graeme@epc.co.uk>
  636.  
  637.     * pkg/lha/build: Added Amiga LhA distribution archive build script.
  638.  
  639.     * src/symbol.c: Always now include stdlib.h and string.h.
  640.  
  641. Tue Mar 21 21:56:06 2000  Graeme Roy  <graeme@epc.co.uk>
  642.  
  643.     * README:
  644.     Mentioned that malloc() is automatically overridden when using AmigaOS
  645.     with gcc.
  646.  
  647.     * FAQ: Mentioned that the Amiga gcc makefile also uses libmpatrol.o.
  648.  
  649.     * doc/mpatrol.texi:
  650.     Updated documentation for AmigaOS when gcc is being used.
  651.  
  652.     * man/man3/mpatrol.3, man/cat3/mpatrol.3:
  653.     Mentioned that malloc() is now automatically overridden on AmigaOS when
  654.     using gcc.
  655.  
  656.     * src/symbol.c:
  657.     Fix base of first object file for AmigaOS with BFD support.
  658.  
  659.     * src/inter.c: Don't call __mp_init() from memory operation functions.
  660.  
  661. Mon Mar 20 23:45:09 2000  Graeme Roy  <graeme@epc.co.uk>
  662.  
  663.     * FAQ: Removed mention of Amiga shared library.
  664.  
  665.     * build/amiga/Attic/mpatrol_pragmas.h, build/amiga/Attic/mpatrol_lib.fd:
  666.     Removed support for Amiga shared library.
  667.  
  668.     * build/amiga/Makefile:
  669.     New GNU makefile for compiling with GCC.
  670.  
  671.     * doc/mpatrol.texi: Removed support for Amiga shared libraries.
  672.  
  673.     * src/config.h: Added limited stack traversal for AmigaOS.
  674.  
  675.     * src/target.h: Added BFD support for AmigaOS when compiling with GCC.
  676.  
  677.     * src/symbol.c: Added support for reading symbols on AmigaOS.
  678.  
  679.     * src/inter.c, src/inter.h, src/mpatrol.h:
  680.     Removed Amiga shared library support.
  681.  
  682.     * src/mpatrol.c:
  683.     Added replacements for malloc() when compiling on Amiga with GCC.
  684.  
  685. Wed Mar 15 01:42:53 2000  Graeme Roy  <graeme@epc.co.uk>
  686.  
  687.     * doc/mpatrol.texi: Added a chapter on integration.
  688.  
  689.     * man/cat3/mpatrol.3, man/man3/mpatrol.3:
  690.     Added information about the default new handler.
  691.  
  692.     * src/config.h: Added the MP_ALLOCFACTOR macro.
  693.  
  694.     * src/memory.c:
  695.     Fixed a rather important bug in __mp_memalloc() when allocating more
  696.     than one initial page of memory.
  697.  
  698.     * src/strtab.c, src/alloc.c, src/addr.c, src/info.c, src/symbol.c,
  699.       src/heap.c:
  700.     Made use of MP_ALLOCFACTOR.
  701.  
  702. Tue Mar 14 00:57:58 2000  Graeme Roy  <graeme@epc.co.uk>
  703.  
  704.     * src/inter.c:
  705.     Added ability to determine source level information from call if
  706.     USEDEBUG is enabled, even if none was passed through.  Also added a
  707.     default low-memory handler for operators new and new[].
  708.  
  709.     * src/malloc.c: Added special mangling for GNU C++ operators.
  710.  
  711. Mon Mar 13 22:48:55 2000  Graeme Roy  <graeme@epc.co.uk>
  712.  
  713.     * build/windows/Makefile, build/netware/Makefile, build/amiga/SMakefile,
  714.       build/unix/Makefile:
  715.     Added list.h to the dependencies for strtab.o.
  716.  
  717.     * src/config.h: Added MP_HASHTABSIZE.
  718.  
  719.     * src/strtab.c, src/strtab.h, src/diag.c:
  720.     Added slots and a list for internal nodes for the hash table.
  721.  
  722. Thu Mar  9 22:11:30 2000  Graeme Roy  <graeme@epc.co.uk>
  723.  
  724.     * FAQ: Added the section on building.
  725.  
  726.     * build/amiga/mpatrol_pragmas.h:
  727.     Added __mp_pushdelstack() and __mp_popdelstack().
  728.  
  729.     * doc/mpatrol.texi:
  730.     Added section on threads and added information about the tape archive
  731.     distribution.
  732.  
  733.     * src/symbol.c: Explicit casts to const to remove warnings.
  734.  
  735.     * pkg/tar/build:
  736.     Initial revision for building a tape archive distribution.
  737.  
  738. Wed Mar  8 01:18:00 2000  Graeme Roy  <graeme@epc.co.uk>
  739.  
  740.     * doc/mpatrol.texi: Updated with all the recent changes.
  741.  
  742. Tue Mar  7 22:10:59 2000  Graeme Roy  <graeme@epc.co.uk>
  743.  
  744.     * build/windows/mpatrol.def, build/amiga/mpatrol_lib.fd:
  745.     Added __mp_pushdelstack() and __mp_popdelstack().
  746.  
  747.     * src/config.h: Added the MP_CONST definition.
  748.  
  749.     * src/inter.c:
  750.     Only call the prologue and epilogue functions if not recursive.  Allow
  751.     the memory operation functions to continue to operate even when the
  752.     mpatrol library has terminated.
  753.  
  754.     * src/symbol.c:
  755.     Changed line field in sourcepos from long to int to match BFD
  756.     definition.
  757.  
  758.     * src/malloc.c: Changed some parameters to be const.
  759.  
  760.     * src/mpatrol.h:
  761.     Added the MP_NOCPLUSPLUS macro for disabling support for C++.
  762.  
  763.     * man/cat1/mpatrol.1, man/man1/mpatrol.1, bin/mpatrol:
  764.     Added the -g option and changed the old -g option to -G.
  765.  
  766.     * man/cat3/mpatrol.3, man/man3/mpatrol.3:
  767.     Documented the USEDEBUG option and added const to some function
  768.     prototypes.
  769.  
  770. Mon Mar  6 21:45:43 2000  Graeme Roy  <graeme@epc.co.uk>
  771.  
  772.     * src/mpatrol.h:
  773.     Added MP_CONST and made many pointer parameters constant.
  774.  
  775. Fri Mar  3 01:24:51 2000  Graeme Roy  <graeme@epc.co.uk>
  776.  
  777.     * doc/mpatrol.texi:
  778.     Added more platforms on which mpatrol has been tested.
  779.  
  780.     * src/diag.c, src/diag.h:
  781.     Modify return address in print symbol when looking for line numbers.
  782.  
  783. Wed Mar  1 00:54:53 2000  Graeme Roy  <graeme@epc.co.uk>
  784.  
  785.     * src/diag.c: Added source level information to __mp_printsymbol().
  786.  
  787.     * src/option.c, src/option.h, src/mpatrol.h: Added the USEDEBUG option.
  788.  
  789. Tue Feb 29 23:08:31 2000  Graeme Roy  <graeme@epc.co.uk>
  790.  
  791.     * src/symbol.c:
  792.     Added __mp_closesymbols() and support for caching BFD library handles.
  793.     Completed __mp_findsource() for BFD targets.
  794.  
  795.     * src/symbol.h:
  796.     Added the __mp_closesymbols() function and the head and tail pointers
  797.     for the access library handles list.  Added line number information
  798.     flag.
  799.  
  800.     * src/inter.c: Added a call to __mp_closesymbols().
  801.  
  802. Thu Feb 24 00:58:32 2000  Graeme Roy  <graeme@epc.co.uk>
  803.  
  804.     * src/info.c:
  805.     Fixed problem when the allocation count gets incremented more than once
  806.     before being stored in an infonode if internal allocations are made.
  807.  
  808. Tue Feb 22 22:29:47 2000  Graeme Roy  <graeme@epc.co.uk>
  809.  
  810.     * doc/mpatrol.texi:
  811.     The C++ operators now have source level information associated with
  812.     them.
  813.  
  814.     * src/config.h: Added definition for MP_MAXDELSTACK.
  815.  
  816.     * src/info.c: Added initialisation of delete stack pointer.
  817.  
  818.     * src/info.h:
  819.     Added the delete stack for operator delete and operator delete[].
  820.  
  821.     * src/inter.c, src/inter.h:
  822.     Added __mp_pushdelstack() and __mp_popdelstack().
  823.  
  824.     * src/mpatrol.h:
  825.     Added the MP_FUNCNAME definition.  Added source level information to
  826.     operator new and operator new[].  Added __mp_pushdelstack() and
  827.     __mp_popdelstack() and added source level information to operator delete
  828.     and operator delete[].  Changed the semicolon to a comma in the macro
  829.     definition of delete as this caused problems in single statement blocks.
  830.  
  831.     * tests/pass/test7.c: New C++ test for operators new and delete.
  832.  
  833. Fri Feb 18 01:20:30 2000  Graeme Roy  <graeme@epc.co.uk>
  834.  
  835.     * FAQ: Added some information on the Amiga version of mpatrol.
  836.  
  837.     * doc/mpatrol.texi: Added information on contributors.
  838.  
  839. Thu Feb 10 21:27:50 2000  Graeme Roy  <graeme@epc.co.uk>
  840.  
  841.     * src/info.c:
  842.     Changed order of deletion of symbols, addrs and allocs since we may need
  843.     to call a library function to close any object files before we delete
  844.     the heap.
  845.  
  846.     * src/symbol.c, src/symbol.h: Added the __mp_findsource() function.
  847.  
  848. Mon Feb  7 20:17:30 2000  Graeme Roy  <graeme@epc.co.uk>
  849.  
  850.     * doc/mpatrol.texi: Added more related software.
  851.  
  852. Mon Jan 31 21:06:39 2000  Graeme Roy  <graeme@epc.co.uk>
  853.  
  854.     * doc/Makefile: Added a target to build mpatrol_doc.tar.gz.
  855.  
  856.     * doc/mpatrol.texi:
  857.     Forgot to add total bytes copied, etc. to the first example summary.
  858.  
  859.     * src/utils.c, src/utils.h: Added __mp_squareroot().
  860.  
  861. Sun Jan 30 21:26:39 2000  Graeme Roy  <graeme@epc.co.uk>
  862.  
  863.     * build/amiga/mpatrol_lib.fd, build/windows/mpatrol.def:
  864.     Added __mp_locatemem().
  865.  
  866.     * build/amiga/mpatrol_pragmas.h:
  867.     Added __mp_comparemem() and __mp_locatemem().
  868.  
  869.     * doc/README:
  870.     Added explanation about the different types of documentation formats.
  871.  
  872.     * doc/mpatrol.texi:
  873.     Added more information about the format of memory operation functions
  874.     tracing and the memchr() and memmem() functions.
  875.  
  876.     * man/man3/mpatrol.3, man/cat3/mpatrol.3: Added memchr() and memmem().
  877.  
  878.     * pkg/pkg/build: Also remove all object files generated during build.
  879.  
  880.     * src/memory.c, src/memory.h: Added the __mp_memfind() function.
  881.  
  882.     * src/info.c, src/info.h: Added the __mp_locatememory() function.
  883.  
  884.     * src/diag.c: Added memchr() and memmem().
  885.  
  886.     * src/inter.c, src/inter.h: Added the __mp_locatemem() function.
  887.  
  888.     * src/mpatrol.h, src/malloc.c:
  889.     Added the memchr() and memmem() functions.
  890.  
  891. Fri Jan 28 01:24:33 2000  Graeme Roy  <graeme@epc.co.uk>
  892.  
  893.     * build/amiga/mpatrol_lib.fd, build/windows/mpatrol.def:
  894.     Added __mp_comparemem().
  895.  
  896.     * doc/mpatrol.texi: Added documentation on memcmp() and bcmp().
  897.  
  898.     * man/man3/mpatrol.3, man/cat3/mpatrol.3: Added memcmp() and bcmp().
  899.  
  900.     * src/info.c:
  901.     Added __mp_comparememory() and also added a count for the total number
  902.     of bytes that have been compared.
  903.  
  904.     * src/info.h:
  905.     Added __mp_comparememory(), memory operation types for memcmp() and
  906.     bcmp() and added a counter for the total number of bytes compared.
  907.  
  908.     * src/diag.c:
  909.     Added names for memcmp() and bcmp() and added the bytes compared total
  910.     to the summary.
  911.  
  912.     * src/inter.c, src/inter.h: Added the __mp_comparememory() function.
  913.  
  914.     * src/malloc.c, src/mpatrol.h: Added memcmp() and bcmp().
  915.  
  916. Thu Jan 27 21:33:14 2000  Graeme Roy  <graeme@epc.co.uk>
  917.  
  918.     * src/memory.c, src/memory.h: Added __mp_memcompare().
  919.  
  920.     * src/malloc.c:
  921.     Added gcc-specific prototype for memcpy() since the builtin requires
  922.     const.
  923.  
  924.     * doc/mpatrol.texi: Added the tutorial.
  925.  
  926.     * tests/tutorial/test1.c, tests/tutorial/test2.c,
  927.       tests/tutorial/test3.c:
  928.     New tutorial files.
  929.  
  930. Tue Jan 25 01:41:53 2000  Graeme Roy  <graeme@epc.co.uk>
  931.  
  932.     * build/amiga/mpatrol_pragmas.h: Added __mp_setmem() and __mp_copymem().
  933.  
  934.     * tests/pass/test6.c: New memory operation test.
  935.  
  936. Mon Jan 24 21:20:53 2000  Graeme Roy  <graeme@epc.co.uk>
  937.  
  938.     * FAQ:
  939.     New information about non-fatal errors and added information on C++
  940.     name demangling.
  941.  
  942.     * build/amiga/mpatrol_lib.fd, build/windows/mpatrol.def:
  943.     Added __mp_setmem() and __mp_copymem().
  944.  
  945.     * doc/mpatrol.texi:
  946.     Mentioned all about the new memory operation replacement functions.
  947.     Added information about expand() and information about the bytes copied
  948.     and bytes set values in the summary.
  949.  
  950.     * man/man1/mpatrol.1, man/cat1/mpatrol.1:
  951.     Added information about implicit LOGALL.
  952.  
  953.     * man/man3/mpatrol.3, man/cat3/mpatrol.3:
  954.     Added details of memory operations and added the expand() function.
  955.  
  956.     * pkg/rpm/build:
  957.     Added more information about building in a directory other than /usr.
  958.  
  959.     * src/info.c, src/info.h:
  960.     Added the expand() function, added the total bytes copied and set counts
  961.     and fixed __mp_checkrange() for free and freed blocks.
  962.  
  963.     * src/diag.c:
  964.     Added the expand() function and the total bytes copied and set to the
  965.     summary.
  966.  
  967.     * src/malloc.c: Added the expand() function.
  968.  
  969.     * src/mpatrol.h:
  970.     Added the expand function and increased to version 1.1.0.
  971.  
  972.     * src/version.c: Updated to version 1.1.0.
  973.  
  974. Fri Jan 21 01:11:45 2000  Graeme Roy  <graeme@epc.co.uk>
  975.  
  976.     * src/alloc.c, src/alloc.h:
  977.     Added an extra argument to __mp_findnode() for detecting if a node lies
  978.     in a range of addresses.
  979.  
  980.     * src/info.c, src/info.h:
  981.     Added the __mp_setmemory(), __mp_copymemory() and __mp_checkrange()
  982.     functions.
  983.  
  984.     * src/diag.c: Added new memory operation function names.
  985.  
  986.     * src/option.c, src/option.h: Added the LOGMEMORY option.
  987.  
  988.     * src/signals.c: Added an extra parameter to __mp_findnode().
  989.  
  990.     * src/inter.c, src/inter.h: Added __mp_setmem() and __mp_copymem().
  991.  
  992.     * src/mpatrol.h, src/malloc.c: Added new memory operation functions.
  993.  
  994.     * tests/fail/test9.c:
  995.     New test which performs an illegal memset() operation.
  996.  
  997.     * tests/fail/test10.c: New test showing the erroneous use of memcpy().
  998.  
  999. Tue Jan 18 00:41:34 2000  Graeme Roy  <graeme@epc.co.uk>
  1000.  
  1001.     * FAQ: Listed more of the potential run-time problems.
  1002.  
  1003. Thu Jan 13 00:40:24 2000  Graeme Roy  <graeme@epc.co.uk>
  1004.  
  1005.     * doc/mpatrol.texi, README:
  1006.     Added information about the new discussion group at eGroups.com.
  1007.  
  1008. Wed Jan 12 01:08:50 2000  Graeme Roy  <graeme@epc.co.uk>
  1009.  
  1010.     * doc/mpatrol.texi:
  1011.     Added more information about SAFESIGNALS and more items of related
  1012.     software.
  1013.  
  1014. Tue Jan 11 00:56:11 2000  Graeme Roy  <graeme@epc.co.uk>
  1015.  
  1016.     * FAQ: Added the FILES section.
  1017.  
  1018.     * doc/Makefile: Changed suffix of ASCII document from .doc to .txt.
  1019.  
  1020.     * doc/mpatrol.texi, README:
  1021.     Added point about reading the FAQ before reporting a bug.
  1022.  
  1023.     * pkg/rpm/mpatrol.spec, pkg/pkg/prototype, pkg/pkg/build:
  1024.     Changed the suffix of the ASCII documentation from .doc to .txt.
  1025.  
  1026. Sun Jan  9 22:08:18 2000  Graeme Roy  <graeme@epc.co.uk>
  1027.  
  1028.     * build/amiga/SMakefile, build/netware/Makefile, build/unix/Makefile,
  1029.       build/windows/Makefile, build/windows/mpatrol.def:
  1030.     Updated the library revision and prevented the object libraries from
  1031.     being built when the all target is used.
  1032.  
  1033.     * FAQ: Added information about signals being ignored.
  1034.  
  1035.     * bin/mpatrol: Added the -g option.
  1036.  
  1037.     * doc/mpatrol.texi: Added the SAFESIGNALS option.
  1038.  
  1039.     * man/man1/mpatrol.1, man/cat1/mpatrol.1: Added the -g option.
  1040.  
  1041.     * man/man3/mpatrol.3, man/cat3/mpatrol.3: Added the SAFESIGNALS option.
  1042.  
  1043.     * src/info.h, src/option.c, src/inter.c:
  1044.     Added support for the new SAFESIGNALS option.
  1045.  
  1046.     * src/signals.c, src/signals.h:
  1047.     Added extra flag to indicate if signals have been saved or not.
  1048.  
  1049. Thu Dec 23 18:50:55 1999  Graeme Roy  <graeme@epc.co.uk>
  1050.  
  1051.     * doc/mpatrol.texi:
  1052.     Added more related software and removed authors from the concept index.
  1053.     Also added FreshMeat details and fixed line numbers in some examples.
  1054.  
  1055.     * FAQ: New file containing the answers to frequently asked questions.
  1056.  
  1057.     * pkg/pkg/pkginfo, pkg/pkg/prototype, pkg/pkg/build,
  1058.       pkg/rpm/mpatrol.spec, pkg/rpm/build:
  1059.     Increased the version to 1.1.0 and added the FAQ.
  1060.  
  1061.     * src/option.h: Added OPT_* definitions for use with mallopt().
  1062.  
  1063. Tue Dec 21 21:43:21 1999  Graeme Roy  <graeme@epc.co.uk>
  1064.  
  1065.     * doc/mpatrol.texi: Added reference to the memory management reference.
  1066.  
  1067.     * src/memory.c, src/alloc.c, src/info.c, src/strtab.c, src/option.c,
  1068.       src/inter.c:
  1069.     Changed calls from memset() to __mp_memset() and calls from memcpy() to
  1070.     __mp_memcopy().
  1071.  
  1072.     * src/symbol.c:
  1073.     Now automatically check for dynamic symbols when using GNU BFD as well.
  1074.  
  1075.     * src/mpatrol.h: Added options and flags for use with mallopt().
  1076.  
  1077. Mon Dec 20 22:06:49 1999  Graeme Roy  <graeme@epc.co.uk>
  1078.  
  1079.     * doc/mpatrol.texi: Added a section on using the library functions.
  1080.  
  1081.     * src/target.h:
  1082.     Now use BFD file format by default on Linux since later RedHat releases
  1083.     don't come with libelf.
  1084.  
  1085.     * src/symbol.c:
  1086.     Made reading the ELF dynamic linker independent of file format.
  1087.  
  1088.     * src/memory.h, src/memory.c: Added __mp_memset() and __mp_memcopy().
  1089.  
  1090. Mon Dec  6 20:50:44 1999  Graeme Roy  <graeme@epc.co.uk>
  1091.  
  1092.     * doc/mpatrol.texi:
  1093.     Added the utilities section and also documented the pkg directory and
  1094.     how to use other libraries with mpatrol.
  1095.  
  1096.     * man/man3/mpatrol.3, man/cat3/mpatrol.3:
  1097.     Added information about core file sizes.
  1098.  
  1099. Mon Nov 29 20:15:50 1999  Graeme Roy  <graeme@epc.co.uk>
  1100.  
  1101.     * pkg/pkg/build, pkg/pkg/prototype, pkg/pkg/pkginfo:
  1102.     New files for use when building a PKG package.
  1103.  
  1104. Sun Nov 28 15:10:28 1999  Graeme Roy  <graeme@epc.co.uk>
  1105.  
  1106.     * pkg/rpm/build, pkg/rpm/mpatrol.spec:
  1107.     New files for use when building an RPM package.
  1108.  
  1109. Sat Nov 27 16:23:59 1999  Graeme Roy  <graeme@epc.co.uk>
  1110.  
  1111.     * doc/mpatrol.texi: Added the how it works chapter.
  1112.  
  1113. Fri Nov 26 14:35:45 1999  Graeme Roy  <graeme@epc.co.uk>
  1114.  
  1115.     * doc/mpatrol.texi:
  1116.     Added the overwrites and underwrites, testing, library behaviour and
  1117.     general errors sections.
  1118.  
  1119. Thu Nov 25 18:09:43 1999  Graeme Roy  <graeme@epc.co.uk>
  1120.  
  1121.     * bin/mpatrol: Added the -Z and -z options.
  1122.  
  1123.     * doc/mpatrol.texi:
  1124.     Added the using mpatrol and the improving performance chapters, added an
  1125.     additional AmigaOS entry in related software, added the FAILFREQ and
  1126.     FAILSEED options, and changed the descriptions of ALLOCSTOP, REALLOCSTOP
  1127.     and FREESTOP.
  1128.  
  1129.     * man/man3/mpatrol.3, man/man1/mpatrol.1, man/cat3/mpatrol.3,
  1130.       man/cat1/mpatrol.1:
  1131.     Added the FAILFREQ and FAILSEED options.
  1132.  
  1133.     * src/inter.c:
  1134.     Set up the random number generator for the FAILFREQ option.
  1135.  
  1136.     * src/info.c: Added support for the FAILFREQ and FAILSEED options.
  1137.  
  1138.     * src/info.h: Added the failure frequency and failure seed.
  1139.  
  1140.     * src/diag.c:
  1141.     Added display of failure frequency and failure seed when showing the
  1142.     summary.
  1143.  
  1144.     * src/option.c:
  1145.     Added the FAILFREQ and FAILSEED options and increased the maximum size
  1146.     of the MPATROL_OPTIONS environment variable from 256 to 1024 bytes.
  1147.  
  1148.     * src/signals.c:
  1149.     Changed __mp_trap() to do nothing so that it can be used as a breakpoint
  1150.     target within a debugger.
  1151.  
  1152. Tue Nov 23 20:25:58 1999  Graeme Roy  <graeme@epc.co.uk>
  1153.  
  1154.     * doc/mpatrol.texi:
  1155.     Added more things to do and also added a list of related software for
  1156.     the Amiga.
  1157.  
  1158. Sun Nov 21 14:22:03 1999  Graeme Roy  <graeme@epc.co.uk>
  1159.  
  1160.     * NOTES:
  1161.     Removed this file as its contents are now in the manual.
  1162.  
  1163.     * README: Removed the reference to NOTES as it no longer exists.
  1164.  
  1165.     * doc/mpatrol.texi:
  1166.     Added the library performance section along with updated performance
  1167.     figures.
  1168.  
  1169. Thu Nov 18 20:04:12 1999  Graeme Roy  <graeme@epc.co.uk>
  1170.  
  1171.     * README, NOTES:
  1172.     Removed a lot of text from these files as it is now in the manual.
  1173.  
  1174.     * EXAMPLES, INSTALL:
  1175.     Removed these files as their contents are now in the manual.
  1176.  
  1177.     * doc/mpatrol.texi: Added the operating system support section.
  1178.  
  1179. Tue Nov 16 01:07:15 1999  Graeme Roy  <graeme@epc.co.uk>
  1180.  
  1181.     * doc/mpatrol.texi:
  1182.     Added information about manual layout and changed Examples appendix to a
  1183.     chapter.
  1184.  
  1185. Mon Nov 15 21:34:03 1999  Graeme Roy  <graeme@epc.co.uk>
  1186.  
  1187.     * doc/mpatrol.texi: Added the section on memory allocations.
  1188.  
  1189.     * doc/Makefile: Now use makeguide to build the AmigaGuide document.
  1190.  
  1191. Sun Nov 14 18:14:11 1999  Graeme Roy  <graeme@epc.co.uk>
  1192.  
  1193.     * doc/mpatrol.texi, doc/Makefile:
  1194.     Added the mpatrol logo to the various document formats.
  1195.  
  1196.     * doc/images/mpatrol.pdf, doc/images/mpatrol.eps,
  1197.       doc/images/mpatrol.jpg:
  1198.     New image files containing the mpatrol logo, which are required by the
  1199.     various documentation formats.
  1200.  
  1201. Wed Nov 10 20:49:19 1999  Graeme Roy  <graeme@epc.co.uk>
  1202.  
  1203.     * bin/mupdate: Added ability to update NEWS with latest changes as well.
  1204.  
  1205.     * NEWS: Added changes from previous versions.
  1206.  
  1207.     * doc/Makefile, doc/mpatrol.texi:
  1208.     New TeXinfo manual for the library, and a Makefile to build various
  1209.     documentation formats from it.
  1210.  
  1211. Sun Nov  7 13:24:44 1999  Graeme Roy  <graeme@epc.co.uk>
  1212.  
  1213.     * src/memory.c:
  1214.     Added the getmemory() function for implementing a simulated heap.
  1215.  
  1216.     * src/config.h: Added support for allocating memory from a static array.
  1217.  
  1218. Thu Oct 21 21:57:48 1999  Graeme Roy  <graeme@epc.co.uk>
  1219.  
  1220.     * README, NOTES, EXAMPLES: Added information about the CHECK option.
  1221.  
  1222.     * bin/mpatrol: Added the -C option.
  1223.  
  1224.     * man/man3/mpatrol.3, man/man1/mpatrol.1, man/cat3/mpatrol.3,
  1225.       man/cat1/mpatrol.1:
  1226.     Added the CHECK and -C options.
  1227.  
  1228.     * src/inter.c:
  1229.     Added the ability to only check the integrity of free memory and
  1230.     overflow buffers when the allocation index is within a given range.
  1231.  
  1232.     * src/info.h, src/diag.c, src/info.c:
  1233.     Added lower and upper check ranges.
  1234.  
  1235.     * src/option.h, src/option.c:
  1236.     Added the readrange() function and the CHECK option.
  1237.  
  1238. Tue Oct 19 19:23:11 1999  Graeme Roy  <graeme@epc.co.uk>
  1239.  
  1240.     * EXAMPLES:
  1241.     Added information about the total warnings and errors displayed at
  1242.     program termination.
  1243.  
  1244.     * NOTES: Added information about 64-bit processors.
  1245.  
  1246.     * src/diag.c:
  1247.     Added information about the total number of warnings and errors.
  1248.  
  1249.     * src/utils.h:
  1250.     Added macro versions of some routines for efficiency reasons.
  1251.  
  1252.     * src/utils.c:
  1253.     Conditionally compile some routines depending on the macro
  1254.     MP_MACROROUTINES.
  1255.  
  1256.     * src/config.h:
  1257.     Added the MP_MACROROUTINES macro which indicates if macro versions of
  1258.     certain routines are to be used for efficiency reasons.
  1259.  
  1260.     * src/memory.c:
  1261.     Improved __mp_memcheck() to be much more efficient for large blocks of
  1262.     memory.
  1263.  
  1264. Sun Oct 17 11:30:12 1999  Graeme Roy  <graeme@epc.co.uk>
  1265.  
  1266.     * NOTES: Added library performance figures and more related software.
  1267.  
  1268.     * README: Changed Solaris 2.7 to Solaris 7.
  1269.  
  1270.     * EXAMPLES: Added note about not using the library in release builds.
  1271.  
  1272. Fri Oct 15 00:14:46 1999  Graeme Roy  <graeme@epc.co.uk>
  1273.  
  1274.     * README: Documented the USEMMAP option.
  1275.  
  1276. Thu Oct 14 23:59:42 1999  Graeme Roy  <graeme@epc.co.uk>
  1277.  
  1278.     * src/option.c:
  1279.     Added the USEMMAP option for UNIX platforms that support mmap().
  1280.  
  1281.     * src/memory.c:
  1282.     Added support for allocating memory using mmap() on UNIX platforms that
  1283.     support it.
  1284.  
  1285.     * src/memory.h:
  1286.     Changed the name of the watch point control file handle field and added
  1287.     a memory mapped file handle field.
  1288.  
  1289.     * src/config.h: Added MP_MMAP_SUPPORT and MP_MMAP_FILENAME.
  1290.  
  1291. Wed Oct 13 21:22:30 1999  Graeme Roy  <graeme@epc.co.uk>
  1292.  
  1293.     * EXAMPLES: New file for illustrating how to use the library.
  1294.  
  1295. Tue Oct 12 19:18:30 1999  Graeme Roy  <graeme@epc.co.uk>
  1296.  
  1297.     * src/alloc.c:
  1298.     Fixed the problem in splitnode() whereby the free node would be lost if
  1299.     there was no more system memory to allocate the leftmost or rightmost
  1300.     nodes.
  1301.  
  1302.     * src/symbol.c:
  1303.     Don't attempt to read from _DYNAMIC if its address is NULL, since that
  1304.     will be the case if the program is statically linked.
  1305.  
  1306. Sun Oct 10 10:21:00 1999  Graeme Roy  <graeme@epc.co.uk>
  1307.  
  1308.     * bin/mupdate:
  1309.     Only update ChangeLog if it has changed since the last release.
  1310.  
  1311. Tue Oct  5 17:35:19 1999  Graeme Roy  <graeme@epc.co.uk>
  1312.  
  1313.     * src/info.c:
  1314.     Fixed a bug in __mp_checkinfo() when all allocations are pages and no
  1315.     freed allocations are being reused, since we don't need to check
  1316.     overflow buffers if the allocation has been freed.
  1317.  
  1318.     * src/stack.c:
  1319.     Fixed a bug in __mp_newframe() if using MP_BUILTINSTACK_SUPPORT when the
  1320.     loop went round one too many times, causing an infinite loop.
  1321.  
  1322. Sun Oct  3 22:50:22 1999  Graeme Roy  <graeme@epc.co.uk>
  1323.  
  1324.     * src/inter.c:
  1325.     Fixed problem in __mp_info() where the check for a known memory block
  1326.     was doing an || instead of an && in the test.
  1327.